function [F F1,F2,F3,F4,car_route]=Objective_compute(Chorm,G,V,g,v,d,K)
[popsize c]=size(Chorm);
F=zeros(popsize,1);
F1=zeros(popsize,1);
F2=zeros(popsize,1);
F3=zeros(popsize,1);
F4=zeros(popsize,1);
lada1=0.8;
lada2=0.2;
lada3=0.5;
lada4=0.5;
for i=1:popsize
    E=Chorm(i,:);
    car_route=Chorm_decode(E,K);
    car_use=0;
    for jj=1:K
        if ~isempty(car_route{jj})
            car_use=car_use+1;
        end
    end
    Dist = distance(car_route,d,K);
    G_use = zeros(1,K);
    V_use = zeros(1,K);
    flag = 1;
    for ii =1:K
        G_use(ii)=sum(g(car_route{ii}));
        V_use(ii)=sum(v(car_route{ii}));
        if ~isempty(car_route{ii})&&(G_use(ii)>G(ii)||V_use(ii)>V(ii))
            F(i)=0;
            flag = 0;
        end
    end
    F1(i)=sum(Dist);
    F2(i)=car_use;
    F3(i)=sum(G_use./G)/car_use;
    F4(i)=sum(V_use./V)/car_use;
    if flag==1
        D_total=sum(Dist);
        F(i)=lada1*(sum(d(:,1)*2)-D_total)/sum(2*d(:,1))+lada2*(lada3*F3(i)+lada4*F4(i));
    end
end
end